package code.google.jcontainer.test.aware;

import code.google.jcontainer.AbstractContainer;
import code.google.jcontainer.annotation.AwareAnnotation;
import code.google.jcontainer.annotation.Container;
import code.google.jcontainer.annotation.Resolve;
import code.google.jcontainer.test.simple.SimpleBean;

import javax.jws.WebMethod;

/**
 * A Container use awareAnnotations to support thirdparty annotation 
 *
 * @author <a href="mailto:jfox.young@gmail.com">Young Yang</a>
 * @create 2009-12-6 22:42:43
 */
@Container(
        name = "SimpleContainer3",
        componentType = SimpleBean.class, // the annotated class want to be managed by this container
        awareAnnotations = {
                @AwareAnnotation(
                        // we'd like to resolve @javax.jws.WebMethod, try publish annotated method as web service method after instanced :)
                        annotationClass = WebMethod.class,
                        resolverClass = WebMethodAnnotationResolver.class,
                        when = {Resolve.WHEN.AFTER_CONSTRUCT})
        }
)
public class SimpleContainer3 extends AbstractContainer{

    // do not need any methods

}